#include "punto.h"
#include  "cuadrado.h"
#include "circulo.h"
#include <iostream>

using namespace std;

int main(){
    int a=1, x=1;
    while(x!=0){
    cout<<"Si desea trabajar con un circulo pulse 1, si desea trabajar con un cuadrado pulse 2"<<endl;
     cin>>x;
        if(x==1){
            Circulo fig;
            while(a!=0){

                cout<<"Seleccione que desea hacer: 1 Mover figura, 2 Redimensionar área, 3 Cambiar color figura, 4 Ver posición figura";
                cout<<", 5 Ver área figura, 6 Ver perímetro figura, 0 Exit"<<endl;
                cin>>a;
                    if(a==1){
                        double  a, b, c, d;
                        Punto centro;
                        centro=fig.getCentro;
                        cout<<"Cuanto desea mover la figura en el eje X"<<endl;
                        cin>>a;
                        cout<<"Cuanto desea mover la figura en el eje Y"<<endl;
                        cin>>b;
                        c=centro.getX();
                        d=centro.getY();
                        c=c+a;
                        d=d+b;
        /*              centro.setX(c);
                        centro.setY(d);
                        fig.setCentro(centro); por si lo que queremos es pasar el punto directamente a la figura  */
                        fig.setCentro(c,d);
                    }
                    else if (a==2){
                        double are, factor;
                        are=fig.getArea();
                        cout<<"Introduzca el factor por el que desea ampliar la figura"<<endl;
                        //mas vale que no pongamos una figura inicial con todos los valores a 0 porque sino esto no sirve
                        cin>>factor;
                        are= are*factor;
                        fig.setArea(are);
                    }
                    else if (a==3){
                        int color;
                        cout<<"Introduzca de que color desea que sea la figura"<<endl;
                        //deberiamos especificar como queremos que se asignen numericamente los colores
                        //podriamos desde tener tres variables de cada color primario y que sus valores varien entre un intervalo indicando su presencia en la mezcla
                        //hasta decir 1 rojo 2 verde..
                        cin>>color;
                        fig.setColor(color);
                    }
                    else if (a==4){
                        Punto centro;
                        double c, d;
                        centro=fig.getCentro;
                        c=centro.getX();
                        d=centro.getY();
                        cout<<"Las coordenadas de la figura son:"<<endl;
                        cout<<"("<<c<<","<<d<<")"<<endl;
                    }
                    else if (a==5){
                        double are;
                        are=fig.getArea();
                        cout<<"El área de la figura es: "<<are<<endl;
                    }
                    else if (a==6){
                        double pmt;
                        pmt=fig.getPerimetro();
                        cout<<"El perímetro de la figura es: "<<pmt<<endl;
                    }


            }
        }
        else if(x==2){
            Cuadrado fig;
            while(a!=0){

                cout<<"Seleccione que desea hacer: 1 Mover figura, 2 Redimensionar área, 3 Cambiar color figura, 4 Ver posición figura";
                cout<<", 5 Ver área figura, 6 Ver perímetro figura, 0 Exit"<<endl;
                cin>>a;
                    if(a==1){
                        double  a, b, c, d;
                        Punto centro;
                        centro=fig.getCentro;
                        cout<<"Cuanto desea mover la figura en el eje X"<<endl;
                        cin>>a;
                        cout<<"Cuanto desea mover la figura en el eje Y"<<endl;
                        cin>>b;
                        c=centro.getX();
                        d=centro.getY();
                        c=c+a;
                        d=d+b;
        /*              centro.setX(c);
                        centro.setY(d);
                        fig.setCentro(centro); por si lo que queremos es pasar el punto directamente a la figura  */
                        fig.setCentro(c,d);
                    }
                    else if (a==2){
                        double are, factor;
                        are=fig.getArea();
                        cout<<"Introduzca el factor por el que desea ampliar la figura"<<endl;
                        //mas vale que no pongamos una figura inicial con todos los valores a 0 porque sino esto no sirve
                        cin>>factor;
                        are= are*factor;
                        fig.setArea(are);
                    }
                    else if (a==3){
                        int color;
                        cout<<"Introduzca de que color desea que sea la figura"<<endl;
                        //deberiamos especificar como queremos que se asignen numericamente los colores
                        //podriamos desde tener tres variables de cada color primario y que sus valores varien entre un intervalo indicando su presencia en la mezcla
                        //hasta decir 1 rojo 2 verde..
                        cin>>color;
                        fig.setColor(color);
                    }
                    else if (a==4){
                        Punto centro;
                        double c, d;
                        centro=fig.getCentro;
                        c=centro.getX();
                        d=centro.getY();
                        cout<<"Las coordenadas de la figura son:"<<endl;
                        cout<<"("<<c<<","<<d<<")"<<endl;
                    }
                    else if (a==5){
                        double are;
                        are=fig.getArea();
                        cout<<"El área de la figura es: "<<are<<endl;
                    }
                    else if (a==6){
                        double pmt;
                        pmt=fig.getPerimetro();
                        cout<<"El perímetro de la figura es: "<<pmt<<endl;
                    }


            }
        }
        else{
            cout<<"Introduzca un valor válido."<<endl;
        }

    }
}
